#ifndef _CTRL_FILE_LIST_H_
#define _CTRL_FILE_LIST_H_

#include "ui_CtrlFileList.h"
#include <QMap>
#include <QStringList>
#include <QWidget>
#include <qcontainerfwd.h>

class CtrlFileList : public QWidget {
  Q_OBJECT
public:
  CtrlFileList(QWidget *parent = nullptr);
  ~CtrlFileList();

signals:
  void sigFileChange(QString str);
  void sigFileTest(QString str);
private:
  Ui::CtrlFileListClass ui;

private slots:
  void on_pbBrowse_clicked();
  void on_pbRefresh_clicked();
  void on_pbClear_clicked();
  void on_listWidgetFile_clicked();
  void on_listWidgetFile_doubleClicked();
private:
  void UpdateFileListOnCtrl();

private:
  QStringList file_list_;
  QString cur_file_;
  QString cur_folder_;

public:
  QString GetFilePath();
  QStringList GetFileList() { return file_list_; };
  QString GetInputFolder() { return cur_folder_; };
};

#endif
